package com.carefree.bookmall.dao;


import com.carefree.bookmall.common.vo.BookQueryVo;

import java.util.List;

/**
 * 推荐
 *
 * @author Aurora
 */
public interface RecommendMapper {

    /**
     * 按推荐类型查询图书
     *
     * @param recommendType 推荐类型（1:scroll; 2:hot; 3:new）
     * @param pageNum       页码
     * @param pageSize      每页显示记录数
     * @return
     */
    public List<BookQueryVo> selectBookByRecommendType(Integer recommendType, int pageNum, int pageSize);

    /**
     * 查询指定推荐类型总数
     *
     * @param recommendType 推荐类型（1:scroll; 2:hot; 3:new）
     * @return
     */
    public int selectRecommendCountOfBooksByRecommendType(Integer recommendType);

    /**
     * 查询指定书籍id和类别id的总数
     *
     * @param recommendType 推荐类型（1:scroll; 2:hot; 3:new）
     * @param bookId        书籍id
     * @return
     */
    public int selectBookByRecommendTypeAndBookId(Integer recommendType, Integer bookId);

    /**
     * 添加推荐书籍
     *
     * @param bookId        书籍id
     * @param recommendType 推荐类型（1:scroll; 2:hot; 3:new）
     * @return 受影响行数
     */
    public int addRecommendBook(Integer recommendType, Integer bookId);

    /**
     * 删除推荐书籍
     *
     * @param bookId        书籍id
     * @param recommendType 推荐类型（1:scroll; 2:hot; 3:new）
     * @return 受影响行数
     */
    public int removeRecommendBook(Integer recommendType, Integer bookId);

    /**
     * 删除
     *
     * @param bookId
     * @return 受影响行数
     */
    public int removeRecommend(Integer bookId);
}
